from flask import Flask
from web.model.base_model import db
from web.model.user_model import Admin, User
from web.model.questionnaire_model import Questionnaire, Question, Options
from flask_cors import *


def creat_app():
    """
    生成flask核心对象，并将各种插件功能集成到flask核心对象中
    :return: flask核心对象
    """
    app = Flask(__name__)   # 生成flask核心对象
    db.init_app(app)    # 将sqlalchemy实例对象注册到flask中
    app.config.from_object('web.config')    # 导入配置文件
    register_blueprint(app)     # 注册蓝图
    db.create_all(app=app)      # 创建所有的数据表
    CORS(app, supports_credentials=True, resources=r'/*')    # 解决跨域问题
    return app


def register_blueprint(app):
    """
    进行蓝图注册
    :param app: flask核心对象
    :return: 无返回值
    """
    from web.control.route import webs
    app.register_blueprint(webs)

